package com.supermarket.manage.provider.api.ucenter;

import com.supermarket.manage.common.dto.PageBean;
import com.supermarket.manage.common.dto.member.request.MemberPageParams;
import com.supermarket.manage.common.pojo.Member;

import java.math.BigDecimal;
import java.util.List;
import java.util.Set;

/**
 * @author Faxon
 * @version 1.0
 * @date 2020-03-12 19:00
 **/
public interface MemberManageService {
    /**
     * 根据手机号 查询 会员数量
     *
     * @param member
     * @return
     */
    Integer getCountByMphone(Member member);

    /**
     * 添加会员
     *
     * @param member
     * @return
     */
    Boolean addMember(Member member);

    /**
     * 添加会员积分
     *
     * @param memberId
     * @param addValue
     * @return
     */
    Boolean addIntegral(String memberId, BigDecimal addValue);

    /**
     * 条件、分页查询会员
     *
     * @param params
     * @return
     */
    PageBean<Member> getMemberPageList(MemberPageParams params);

    /**
     * 删除会员
     *
     * @param mid
     * @return
     */
    Boolean deleteMember(String mid);

    /**
     * 根据id查询会员
     *
     * @param memberId
     * @return
     */
    Member getMemberById(String memberId);

    /**
     * 根据多个id查询会员信息
     *
     * @param ids
     * @return
     */
    List<Member> getMembersByIds(Set<String> ids);

    /**
     * 获取会员列表
     *
     * @param params
     * @return
     */
    List<Member> getMemberList(MemberPageParams params);
}
